import request from './request'

/**
 * 用户管理相关API
 */

/**
 * 获取用户列表（管理端）
 * @param {Object} params 查询参数
 * @returns {Promise} 用户列表响应
 */
export const getUserList = (params) => {
    return request({
        url: '/api/admin/users',
        method: 'GET',
        params
    })
}

/**
 * 获取用户详情（管理端）
 * @param {number} id 用户ID
 * @returns {Promise} 用户详情响应
 */
export const getUserDetail = (id) => {
    return request({
        url: `/api/admin/users/${id}`,
        method: 'GET'
    })
}

/**
 * 更新用户状态
 * @param {number} id 用户ID
 * @param {number} status 状态值
 * @returns {Promise} 更新响应
 */
export const updateUserStatus = (id, status) => {
    return request({
        url: `/api/admin/users/${id}/status`,
        method: 'PUT',
        data: {status}
    })
}

/**
 * 删除用户
 * @param {number} id 用户ID
 * @returns {Promise} 删除响应
 */
export const deleteUser = (id) => {
    return request({
        url: `/api/admin/users/${id}`,
        method: 'DELETE'
    })
}

/**
 * 获取用户统计信息
 * @returns {Promise} 统计响应
 */
export const getUserStatistics = () => {
    return request({
        url: '/api/admin/users/statistics',
        method: 'GET'
    })
}

/**
 * 获取当前用户信息
 * @returns {Promise} 用户信息响应
 */
export const getCurrentUser = () => {
    return request({
        url: '/api/user/profile',
        method: 'GET'
    })
}

/**
 * 更新用户个人信息
 * @param {Object} data 用户信息
 * @returns {Promise} 更新响应
 */
export const updateUserProfile = (data) => {
    return request({
        url: '/api/user/profile',
        method: 'PUT',
        data
    })
}

/**
 * 修改密码
 * @param {Object} data 密码数据
 * @returns {Promise} 修改响应
 */
export const changePassword = (data) => {
    return request({
        url: '/api/user/password',
        method: 'PUT',
        data
    })
}
